﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.Practices.EnterpriseLibrary.PolicyInjection;

using NCS.IConnect.ApplicationContexts;

using JM.JCY.BusinessFacade;
using JM.JCY.Common;
using JM.JCY.BusinessEntity;
using JM.JCY.BusinessEntity.PPSM2007;

namespace JM.JCY.Proxy
{
    public class PPSM2007Proxy : JCYProxyBase<IPPSM2007>, IPPSM2007
    {
        private IPPSM2007 GetInstance()
        {
            return PolicyInjection.Create<PPSM2007BF, IPPSM2007>();
        }

        public PPSMUserInfoDataSet.UserInfoDataTable GetUserInfoByName(string userName)
        {
            return GetInstance().GetUserInfoByName(userName);
        }

        public PPSMUserInfoDataSet.UserCareerDataTable GetCareerByName(string userName)
        {
            return GetInstance().GetCareerByName(userName);
        }

        public PPSMUserEduInfoDataSet.UserEduInfoDataTable GetEduInfoByName(string userName)
        {
            return GetInstance().GetEduInfoByName(userName);
        }
        public PPSM2007CodeDataSet.T_PPSM2007CODEDataTable GetCodeDescByCategoryAndValue(string category, string value)
        {

            return GetInstance().GetCodeDescByCategoryAndValue(category, value);
        }

        public PPSM2007CodeDataSet.T_PPSM2007CODEDataTable GetPPSM2007CodeTable()
        {
            return GetInstance().GetPPSM2007CodeTable();
        }

        public PPSMUserEduInfoDataSet.UserTrainDataTable GetTrainInfoByName(string userName)
        {
            return GetInstance().GetTrainInfoByName(userName);
        }

        public PPSMUserRelationDataSet.UserRelationDataTable GetRelationInfoByName(string userName)
        {
            return GetInstance().GetRelationInfoByName(userName);
        }

        public PPSMUserAssessmentDataSet.UserAssessmentDataTable GeAssessmentInfoByName(string userName)
        {
            return GetInstance().GeAssessmentInfoByName(userName);
        }

        public PPSMUserAssessmentDataSet.UserGloryDataTable GeGloryInfoByName(string userName)
        {

            return GetInstance().GeGloryInfoByName(userName);
        }

        public PPSMUserAssessmentDataSet.UserPunishInfoDataTable GetPunishInfoByName(string userName)
        {

            return  GetInstance().GetPunishInfoByName(userName);
        }
    }
}
